<?php

	/*
	 * 	静态函数类
	 */
	class Func
	{
		/*
		 * 	得到格式化的FEED时间
		 */
		public static function getFormatTimeForFeed($atime)
		{
			$today_start  = mktime(0, 0, 0, date("m")  , date("d"), date("Y")); //今天开始
			$today_end  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));//今天结束
			$time1 = date('Y',$atime);
			$time2 = date('Y',time());
			if($time1==$time2){//今年
				if($today_start<$atime && $atime<$today_end){//今天的
					if(ceil((time()-$atime)/60)<60){
						return ceil((time()-$atime)/60).'分钟之前';
					}else{
						return '今天 '.date('H:i:s',$atime);
					}
				}else{//今年的但是不是今天的 显示月日 时分秒
					return date('m-d H:i:s',$atime);
				}
			}else{//往年--年-月-日 时：分：秒
				return date('Y-m-d H:i:s',$atime);
			}
		}
		
		/*
		 *	UTF8字符串长度  
		 *	下面定义的strlen_utf8函数可以统计UTF-8字符串的长度，
		 *	但不同的是，该函数并不考虑字节，这有些类似 Javascript 中字符串的length方法，一个字符全部按 1 个长度计算。   
		 */
		function getStrlenByUTF8($str)
		{
			$i = 0;  
			$count = 0;  
			$len = strlen ($str);  
			while ($i < $len) 
			{
				$chr = ord ($str[$i]);  
				$count++;
				$i++;
				if($i >= $len) break;
				  
				if($chr & 0x80) 
				{
					$chr <<= 1;
					while ($chr & 0x80) 
					{
						$i++;  
						$chr <<= 1;  
					}
				}  
			}
			return $count;  
		}
		
		// 循环创建目录
		function mk_dir($dir, $mode = 0777) {
			if (is_dir($dir) || @mkdir($dir, $mode))
				return true;
			if (!self::mk_dir(dirname($dir), $mode))
				return false;
			return @mkdir($dir, $mode);
		}
		
		// 自动转换字符集 支持数组转换
		function auto_charset($fContents, $from='gbk', $to='utf-8') {
		    $from = strtoupper($from) == 'UTF8' ? 'utf-8' : $from;
		    $to = strtoupper($to) == 'UTF8' ? 'utf-8' : $to;
		    if (strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents))) {
		        //如果编码相同或者非字符串标量则不转换
		        return $fContents;
		    }
		    if (is_string($fContents)) {
		        if (function_exists('mb_convert_encoding')) {
		            return mb_convert_encoding($fContents, $to, $from);
		        } elseif (function_exists('iconv')) {
		            return iconv($from, $to, $fContents);
		        } else {
		            return $fContents;
		        }
		    } elseif (is_array($fContents)) {
		        foreach ($fContents as $key => $val) {
		            $_key = self::auto_charset($key, $from, $to);
		            $fContents[$_key] = self::auto_charset($val, $from, $to);
		            if ($key != $_key)
		                unset($fContents[$key]);
		        }
		        return $fContents;
		    }
		    else {
		        return $fContents;
		    }
		}
		
		//随机数
		function random($length) {
		$hash = '';
		$chars = '1234567890abcdefghijklmnopqrstuvwxyz';
		$max = strlen($chars) - 1;
		for($i = 0; $i < $length; $i++) {
			$hash .= $chars[mt_rand(0, $max)];
		}
		return $hash;
}
	}
?>